//
//  HJStatus.swift
//  HJWeibo
//
//  Created by mac on 16/1/16.
//  Copyright © 2016年 mac. All rights reserved.
//

import UIKit

class HJStatus: NSObject {
    
    //微博创建时间
    var created_at: String?
    //微博Id    OC:id是任意对象的关键字
    //Int  NSInteger  在iPhone 5 5c 4s 4 是32位
    //Int64  long long，   64位
    var id: Int64 = 0
    
    //微博内容
    var text: String?
    //微博来源
    var source: String?
    
    //用户  如果不做任何特殊处理 ，最终会对应上一个 字典(object)
    var user: HJUser?
    
    //构造方法
    init(dict: [String : AnyObject]) {
        super.init()
        setValuesForKeysWithDictionary(dict)
    }
    
    //重写KVC 赋值的方法
    override func setValue(value: AnyObject?, forKey key: String) {
        if key == "user" {
            //value 就是一个字典对象
            if let dict = value as? [String : AnyObject] {
                //能够转化为[String : AnyObject]字典对象
                //字典转模型
                user = HJUser(dict: dict)
                //return  非常关键  不return 前面的字典转模型 就白做了
                return
            }
        }
        super.setValue(value, forKey: key)
    }
    
    //过滤
    override func setValue(value: AnyObject?, forUndefinedKey key: String) {}
    
    //重写对象的描述信息
    override var description: String {
        //使用kvc 方式 获取对象的字典信息
        let keys = ["created_at","id","text","source"]
        let dict = self.dictionaryWithValuesForKeys(keys)
        return dict.description
    }
    
    
    
    
    

}
